In many situations, individuals and corporations need to securely store electronic data. A key file, storing encryption or license keys, is an example of the type of data that individuals and corporations often need to store securely. Other examples of data that may need to be stored securely include sensitive information such as business and trade secrets, confidential and personal information and in general any information that an individual or corporation desires to keep private. In some cases, data can be stored on secure storage devices that use access passwords to control access to the data.
The security of data stored on a device can be compromised when its access password is systematically and exhaustively attempted until the correct one is identified. In some cases, this type of password-checking exercise may take the form of a dictionary attack, where all the words in a pre-arranged list of values expected to have higher chances of success are attempted, or a brute force attack where a large proportion of the password syntax is searched systematically. Such password-checking exercises can be automated and rendered relatively trivial through the use of computer software particularly when they can be implemented offline.